package com.edou.cms.dto;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

import com.edou.base.dto.BaseCondition;
import com.edou.cms.entity.CmsArticle;
import com.edou.cms.entity.CmsChannel;
import com.edou.cms.entity.CmsTag;

public class CmsArticleCondition extends BaseCondition {
	/** 栏目名称 */
	private String channelId;
	/** 大栏目名称 1.信托学院 2.信托咨询*/
	private Integer bChannelId;
	/** 文章名称 */
	private String articleName;
	/** 文章关键词 */
	private String keyword;
	/** 文章关键词 */
	private String keyword2;
	/** 文章关键词 */
	private String keyword3;
	/** 发布开始时间 */
	private Date createDateBegin;
	/** 发布结束时间 */
	private Date createDateEnd;
	/** 是否发布 0-不发布 1-发布 */
	private Integer isPublish;
	/** 是否推荐*/
	private Integer isRecommend;
	/** 栏目集合*/
	private List<CmsChannel> cmsChannel;
	/** 分页条数 */
	private Integer pageSize;
	/** 当前页面 */
	private Integer pageCurrentIndex;
	/** 作者Id*/
	private String authorId;
	/** 排序参数，用于上一篇下一篇的查询*/
	private Integer sortIndex;
	/** 文章来源 */
	private String source;
	/**发布时间*/
	private Date publishDate;
	/**
	 * 父级栏目
	 */
	private String parentChannelId;

	/** 全站搜索关键词，模糊匹配文章标题与摘要 */
	private String key;
	
	private boolean home = true;
	/** 标签id*/
	private String tagId;
	/**
	 * 栏目id
	 */
	private String columnId;
	/**
	 * 栏目类型
	 * 专栏子版块：1-动态报道，2-安拓推荐，3-相关资讯，4-大家看法，5-相关案例
	 */
	private Integer sectionId;
	
	/** 点赞类型    1. 文章 2. 帖子 3专栏**/
	private Integer type;
	
	/** 类型（1：博主 2：自媒体**/
	private Integer authorType;
	
	/** 当前时间 */
	private String time;
	
	/** 两星期前时间 */
	private String lastTime;
	
	private List<CmsTag> cmsTagList = new ArrayList<CmsTag>();
	
	/** 按照时间排序*/
	private Integer createDateScheme;
	
	/** 按照点击量排序*/
	private Integer readNumScheme;
	
	/** 按照创建人查询 */
	private String createBy;
	
	/** 发布状态 0、未审核 1、审核通过 2、需要修改  3.审核未通过 4.保存至草稿箱*/
	private Integer state;
	/** 状态数组 */
	private Integer[] states; 
	
	/** 多个搜索关键字*/
	private List<String> keyList = new ArrayList<String>();
	/** 多个搜索标签*/
	private List<String> tagIdList = new ArrayList<String>();
	
	/** */
	private List<CmsArticle> articleList = new ArrayList<CmsArticle>();

	public Integer getCurrentIndex(){
		return this.pageCurrentIndex * this.pageSize;
	}
	public String getKey() {
		return key;
	}

	public String getSource() {
		return source;
	}
	public void setSource(String source) {
		this.source = source;
	}
	public void setKey(String key) {
		this.key = key;
	}

	public Integer getbChannelId() {
		return bChannelId;
	}
	public void setbChannelId(Integer bChannelId) {
		this.bChannelId = bChannelId;
	}
	public List<CmsArticle> getArticleList() {
		return articleList;
	}
	public void setArticleList(List<CmsArticle> articleList) {
		this.articleList = articleList;
	}
	public String getChannelId() {
		return channelId;
	}

	public Integer getSortIndex() {
		return sortIndex;
	}
	public void setSortIndex(Integer sortIndex) {
		this.sortIndex = sortIndex;
	}
	public void setChannelId(String channelId) {
		this.channelId = channelId;
	}

	public String getArticleName() {
		return articleName;
	}

	public void setArticleName(String articleName) {
		this.articleName = articleName;
	}

	public Date getCreateDateBegin() {
		return createDateBegin;
	}

	public void setCreateDateBegin(Date createDateBegin) {
		this.createDateBegin = createDateBegin;
	}

	public Date getCreateDateEnd() {
		return createDateEnd;
	}

	public void setCreateDateEnd(Date createDateEnd) {
		this.createDateEnd = createDateEnd;
	}

	public Integer getIsPublish() {
		return isPublish;
	}
	public void setIsPublish(Integer isPublish) {
		this.isPublish = isPublish;
	}

	public String getKeyword() {
		return keyword;
	}

	public void setKeyword(String keyword) {
		this.keyword = keyword;
	}

	public String getKeyword2() {
		return keyword2;
	}

	public void setKeyword2(String keyword2) {
		this.keyword2 = keyword2;
	}

	public String getKeyword3() {
		return keyword3;
	}

	public void setKeyword3(String keyword3) {
		this.keyword3 = keyword3;
	}

	public Integer getBChannelId() {
		return bChannelId;
	}

	public void setBChannelId(Integer channelId) {
		bChannelId = channelId;
	}

	public String getColumnId() {
		return columnId;
	}

	public void setColumnId(String columnId) {
		this.columnId = columnId;
	}

	public Integer getSectionId() {
		return sectionId;
	}

	public void setSectionId(Integer sectionId) {
		this.sectionId = sectionId;
	}

	public boolean isHome() {
		return home;
	}

	public void setHome(boolean home) {
		this.home = home;
	}

	public List<CmsChannel> getCmsChannel() {
		return cmsChannel;
	}

	public void setCmsChannel(List<CmsChannel> cmsChannel) {
		this.cmsChannel = cmsChannel;
	}

	public String getTagId() {
		return tagId;
	}

	public void setTagId(String tagId) {
		this.tagId = tagId;
	}

	public String getParentChannelId() {
		return parentChannelId;
	}

	public void setParentChannelId(String parentChannelId) {
		this.parentChannelId = parentChannelId;
	}

	public Integer getType() {
		return type;
	}

	public void setType(Integer type) {
		this.type = type;
	}

	public Integer getAuthorType() {
		return authorType;
	}

	public void setAuthorType(Integer authorType) {
		this.authorType = authorType;
	}

	public Integer getIsRecommend() {
		return isRecommend;
	}

	public void setIsRecommend(Integer isRecommend) {
		this.isRecommend = isRecommend;
	}

	public List<CmsTag> getCmsTagList() {
		return cmsTagList;
	}

	public void setCmsTagList(List<CmsTag> cmsTagList) {
		this.cmsTagList = cmsTagList;
	}

	public String getTime() {
		return time;
	}

	public void setTime(String time) {
		this.time = time;
	}

	public String getLastTime() {
		return lastTime;
	}

	public void setLastTime(String lastTime) {
		this.lastTime = lastTime;
	}

	public Integer getPageSize() {
		return pageSize;
	}

	public void setPageSize(Integer pageSize) {
		this.pageSize = pageSize;
	}

	public Integer getPageCurrentIndex() {
		return pageCurrentIndex;
	}

	public void setPageCurrentIndex(Integer pageCurrentIndex) {
		this.pageCurrentIndex = pageCurrentIndex;
	}

	public String getAuthorId() {
		return authorId;
	}

	public void setAuthorId(String authorId) {
		this.authorId = authorId;
	}
	
	public Integer getCreateDateScheme() {
		return createDateScheme;
	}
	
	public void setCreateDateScheme(Integer createDateScheme) {
		this.createDateScheme = createDateScheme;
	}
	
	public Integer getReadNumScheme() {
		return readNumScheme;
	}
	
	public void setReadNumScheme(Integer readNumScheme) {
		this.readNumScheme = readNumScheme;
	}
	public Date getPublishDate() {
		return publishDate;
	}
	public void setPublishDate(Date publishDate) {
		this.publishDate = publishDate;
	}
	public String getCreateBy() {
		return createBy;
	}	
	public void setCreateBy(String createBy) {
		this.createBy = createBy;
	}
	public Integer getState() {
		return state;
	}
	public void setState(Integer state) {
		this.state = state;
	}
	
	public Integer[] getStates() {
		return states;
	}
	public void setStates(Integer[] states) {
		this.states = states;
	}
	public List<String> getKeyList() {
		return keyList;
	}
	public void setKeyList(List<String> keyList) {
		this.keyList = keyList;
	}
	public List<String> getTagIdList() {
		return tagIdList;
	}
	public void setTagIdList(List<String> tagIdList) {
		this.tagIdList = tagIdList;
	}

	
}
